home *** CD-ROM | disk | FTP | other *** search
/ Inter.Net 55-1 / Inter.Net 55-1.iso / CBuilder / Setup / BCB / data.z / ddeman.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-09  |  9.5 KB  |  247 lines

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1998 by Borland International
  3. // All rights reserved
  4.  
  5. // (DO NOT EDIT: machine generated header) 'DdeMan.pas' rev: 3.00
  6.  
  7. #ifndef DdeManHPP
  8. #define DdeManHPP
  9. #include <StdCtrls.hpp>
  10. #include <Ddeml.hpp>
  11. #include <Controls.hpp>
  12. #include <Forms.hpp>
  13. #include <Graphics.hpp>
  14. #include <Classes.hpp>
  15. #include <Windows.hpp>
  16. #include <SysInit.hpp>
  17. #include <System.hpp>
  18.  
  19. //-- user supplied -----------------------------------------------------------
  20.  
  21. namespace Ddeman
  22. {
  23. //-- type declarations -------------------------------------------------------
  24. enum TDataMode { ddeAutomatic, ddeManual };
  25.  
  26. typedef void __fastcall (__closure *TMacroEvent)(System::TObject* Sender, Classes::TStrings* Msg);
  27.  
  28. class DELPHICLASS TDdeClientConv;
  29. class DELPHICLASS TDdeClientItem;
  30. class PASCALIMPLEMENTATION TDdeClientConv : public Classes::TComponent 
  31. {
  32.     typedef Classes::TComponent inherited;
  33.     
  34. private:
  35.     System::AnsiString FDdeService;
  36.     System::AnsiString FDdeTopic;
  37.     int FConv;
  38.     tagCONVINFO FCnvInfo;
  39.     Classes::TList* FItems;
  40.     int FHszApp;
  41.     int FHszTopic;
  42.     int FDdeFmt;
  43.     Classes::TNotifyEvent FOnClose;
  44.     Classes::TNotifyEvent FOnOpen;
  45.     System::AnsiString FAppName;
  46.     TDataMode FDataMode;
  47.     TDataMode FConnectMode;
  48.     bool FWaitStat;
  49.     bool FFormatChars;
  50.     void __fastcall SetDdeService(const System::AnsiString Value);
  51.     void __fastcall SetDdeTopic(const System::AnsiString Value);
  52.     void __fastcall SetService(const System::AnsiString Value);
  53.     void __fastcall SetTopic(const System::AnsiString Value);
  54.     void __fastcall SetConnectMode(TDataMode NewMode);
  55.     void __fastcall SetFormatChars(bool NewFmt);
  56.     void __fastcall XactComplete(void);
  57.     void __fastcall SrvrDisconnect(void);
  58.     void __fastcall DataChange(int DdeDat, int hszIt);
  59.     
  60. protected:
  61.     bool __fastcall CreateDdeConv(int FHszApp, int FHszTopic);
  62.     Classes::TPersistent* __fastcall GetCliItemByName(const System::AnsiString ItemName);
  63.     Classes::TPersistent* __fastcall GetCliItemByCtrl(TDdeClientItem* ACtrl);
  64.     virtual void __fastcall Loaded(void);
  65.     virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
  66.     void __fastcall ReadLinkInfo(Classes::TReader* Reader);
  67.     void __fastcall WriteLinkInfo(Classes::TWriter* Writer);
  68.     bool __fastcall OnSetItem(TDdeClientItem* aCtrl, const System::AnsiString S);
  69.     void __fastcall OnAttach(TDdeClientItem* aCtrl);
  70.     void __fastcall OnDetach(TDdeClientItem* aCtrl);
  71.     DYNAMIC void __fastcall Close(void);
  72.     DYNAMIC void __fastcall Open(void);
  73.     bool __fastcall ChangeLink(const System::AnsiString App, const System::AnsiString Topic, const System::AnsiString 
  74.         Item);
  75.     void __fastcall ClearItems(void);
  76.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  77.         );
  78.     
  79. public:
  80.     __fastcall virtual TDdeClientConv(Classes::TComponent* AOwner);
  81.     __fastcall virtual ~TDdeClientConv(void);
  82.     bool __fastcall PasteLink(void);
  83.     bool __fastcall OpenLink(void);
  84.     bool __fastcall SetLink(const System::AnsiString Service, const System::AnsiString Topic);
  85.     void __fastcall CloseLink(void);
  86.     bool __fastcall StartAdvise(void);
  87.     bool __fastcall PokeDataLines(const System::AnsiString Item, Classes::TStrings* Data);
  88.     bool __fastcall PokeData(const System::AnsiString Item, char * Data);
  89.     bool __fastcall ExecuteMacroLines(Classes::TStrings* Cmd, bool waitFlg);
  90.     bool __fastcall ExecuteMacro(char * Cmd, bool waitFlg);
  91.     char * __fastcall RequestData(const System::AnsiString Item);
  92.     __property int DdeFmt = {read=FDdeFmt, nodefault};
  93.     __property bool WaitStat = {read=FWaitStat, nodefault};
  94.     __property int Conv = {read=FConv, nodefault};
  95.     __property TDataMode DataMode = {read=FDataMode, write=FDataMode, nodefault};
  96.     
  97. __published:
  98.     __property System::AnsiString ServiceApplication = {read=FAppName, write=FAppName};
  99.     __property System::AnsiString DdeService = {read=FDdeService, write=SetDdeService};
  100.     __property System::AnsiString DdeTopic = {read=FDdeTopic, write=SetDdeTopic};
  101.     __property TDataMode ConnectMode = {read=FConnectMode, write=SetConnectMode, default=0};
  102.     __property bool FormatChars = {read=FFormatChars, write=SetFormatChars, default=0};
  103.     __property Classes::TNotifyEvent OnClose = {read=FOnClose, write=FOnClose};
  104.     __property Classes::TNotifyEvent OnOpen = {read=FOnOpen, write=FOnOpen};
  105. };
  106.  
  107. class PASCALIMPLEMENTATION TDdeClientItem : public Classes::TComponent 
  108. {
  109.     typedef Classes::TComponent inherited;
  110.     
  111. private:
  112.     Classes::TStrings* FLines;
  113.     TDdeClientConv* FDdeClientConv;
  114.     System::AnsiString FDdeClientItem;
  115.     Classes::TNotifyEvent FOnChange;
  116.     System::AnsiString __fastcall GetText(void);
  117.     void __fastcall SetDdeClientItem(const System::AnsiString Val);
  118.     void __fastcall SetDdeClientConv(TDdeClientConv* Val);
  119.     void __fastcall SetText(const System::AnsiString S);
  120.     void __fastcall SetLines(Classes::TStrings* L);
  121.     void __fastcall OnAdvise(void);
  122.     
  123. protected:
  124.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  125.         );
  126.     
  127. public:
  128.     __fastcall virtual TDdeClientItem(Classes::TComponent* AOwner);
  129.     __fastcall virtual ~TDdeClientItem(void);
  130.     
  131. __published:
  132.     __property System::AnsiString Text = {read=GetText, write=SetText};
  133.     __property Classes::TStrings* Lines = {read=FLines, write=SetLines};
  134.     __property TDdeClientConv* DdeConv = {read=FDdeClientConv, write=SetDdeClientConv};
  135.     __property System::AnsiString DdeItem = {read=FDdeClientItem, write=SetDdeClientItem};
  136.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  137. };
  138.  
  139. class DELPHICLASS TDdeServerConv;
  140. class PASCALIMPLEMENTATION TDdeServerConv : public Classes::TComponent 
  141. {
  142.     typedef Classes::TComponent inherited;
  143.     
  144. private:
  145.     Classes::TNotifyEvent FOnOpen;
  146.     Classes::TNotifyEvent FOnClose;
  147.     TMacroEvent FOnExecuteMacro;
  148.     
  149. protected:
  150.     DYNAMIC void __fastcall Connect(void);
  151.     DYNAMIC void __fastcall Disconnect(void);
  152.     
  153. public:
  154.     __fastcall virtual TDdeServerConv(Classes::TComponent* AOwner);
  155.     __fastcall virtual ~TDdeServerConv(void);
  156.     int __fastcall ExecuteMacro(int Data);
  157.     
  158. __published:
  159.     __property Classes::TNotifyEvent OnOpen = {read=FOnOpen, write=FOnOpen};
  160.     __property Classes::TNotifyEvent OnClose = {read=FOnClose, write=FOnClose};
  161.     __property TMacroEvent OnExecuteMacro = {read=FOnExecuteMacro, write=FOnExecuteMacro};
  162. };
  163.  
  164. class DELPHICLASS TDdeServerItem;
  165. class PASCALIMPLEMENTATION TDdeServerItem : public Classes::TComponent 
  166. {
  167.     typedef Classes::TComponent inherited;
  168.     
  169. private:
  170.     Classes::TStrings* FLines;
  171.     TDdeServerConv* FServerConv;
  172.     Classes::TNotifyEvent FOnChange;
  173.     Classes::TNotifyEvent FOnPokeData;
  174.     int FFmt;
  175.     void __fastcall ValueChanged(void);
  176.     
  177. protected:
  178.     System::AnsiString __fastcall GetText(void);
  179.     void __fastcall SetText(const System::AnsiString Item);
  180.     void __fastcall SetLines(Classes::TStrings* Value);
  181.     void __fastcall SetServerConv(TDdeServerConv* SConv);
  182.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  183.         );
  184.     
  185. public:
  186.     __fastcall virtual TDdeServerItem(Classes::TComponent* AOwner);
  187.     __fastcall virtual ~TDdeServerItem(void);
  188.     int __fastcall PokeData(int Data);
  189.     void __fastcall CopyToClipboard(void);
  190.     DYNAMIC void __fastcall Change(void);
  191.     __property int Fmt = {read=FFmt, nodefault};
  192.     
  193. __published:
  194.     __property TDdeServerConv* ServerConv = {read=FServerConv, write=SetServerConv};
  195.     __property System::AnsiString Text = {read=GetText, write=SetText};
  196.     __property Classes::TStrings* Lines = {read=FLines, write=SetLines};
  197.     __property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
  198.     __property Classes::TNotifyEvent OnPokeData = {read=FOnPokeData, write=FOnPokeData};
  199. };
  200.  
  201. class DELPHICLASS TDdeMgr;
  202. class PASCALIMPLEMENTATION TDdeMgr : public Classes::TComponent 
  203. {
  204.     typedef Classes::TComponent inherited;
  205.     
  206. private:
  207.     System::AnsiString FAppName;
  208.     int FHszApp;
  209.     Classes::TList* FConvs;
  210.     Classes::TList* FCliConvs;
  211.     Classes::TList* FConvCtrls;
  212.     int FDdeInstId;
  213.     Word FLinkClipFmt;
  214.     void __fastcall Disconnect(Classes::TComponent* DdeSrvrConv);
  215.     Classes::TComponent* __fastcall GetSrvrConv(const System::AnsiString Topic);
  216.     bool __fastcall AllowConnect(int hszApp, int hszTopic);
  217.     int __fastcall AllowWildConnect(int hszApp, int hszTopic);
  218.     bool __fastcall Connect(int Conv, int hszTopic, bool SameInst);
  219.     void __fastcall PostDataChange(const System::AnsiString Topic, System::AnsiString Item);
  220.     void __fastcall SetAppName(const System::AnsiString Name);
  221.     void __fastcall ResetAppName(void);
  222.     TDdeServerConv* __fastcall GetServerConv(const System::AnsiString Topic);
  223.     void __fastcall InsertServerConv(TDdeServerConv* SConv);
  224.     void __fastcall RemoveServerConv(TDdeServerConv* SConv);
  225.     Forms::TForm* __fastcall GetForm(const System::AnsiString Topic);
  226.     
  227. public:
  228.     __fastcall virtual TDdeMgr(Classes::TComponent* AOwner);
  229.     __fastcall virtual ~TDdeMgr(void);
  230.     System::AnsiString __fastcall GetExeName(void);
  231.     __property int DdeInstId = {read=FDdeInstId, write=FDdeInstId, nodefault};
  232.     __property System::AnsiString AppName = {read=FAppName, write=SetAppName};
  233.     __property Word LinkClipFmt = {read=FLinkClipFmt, nodefault};
  234. };
  235.  
  236. //-- var, const, procedure ---------------------------------------------------
  237. extern PACKAGE TDdeMgr* ddeMgr;
  238. extern PACKAGE bool __fastcall GetPasteLinkInfo(System::AnsiString &Service, System::AnsiString &Topic
  239.     , System::AnsiString &Item);
  240.  
  241. }    /* namespace Ddeman */
  242. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  243. using namespace Ddeman;
  244. #endif
  245. //-- end unit ----------------------------------------------------------------
  246. #endif    // DdeMan
  247.